package com.basic.modules.nykf.entity;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.basic.common.annotation.DictParam;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.*;

import java.util.Date;
import java.util.List;
import java.util.Map;

@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("n_ykf_customer_complaint_handling")
public class CustomerComplaintHandlingEntity {

    /**
     * 投诉明细id(主键)
     */
    @TableId
    private Long complaintDetailId;

    /**
     * 投诉id
     */
    private Long complaintId;

    /**
     * 投诉客户名称
     */
    private String tskhmc;

    /**
     * 投诉客户店铺
     */
    private String tskhdp;

    /**
     * 投诉客户子账号
     */
    private String tskhzzh;

    /**
     * 投诉处理内容
     */
    private String tsclnr;

    /**
     * 投诉结果判定(字典)-val
     */
    private String tsjgpdVal;

    /**
     * 投诉结果判定
     */
    @DictParam(field = "tsjgpdVal", targetField = "tsjgpdName", dictType = "tsjg")
    private String tsjgpdName;

    /**
     * 违规问题分布一(字典)-val
     */
    private String wgwtfbyVal;

    /**
     * 违规问题分布一(字典)
     */
    @DictParam(field = "wgwtfbyVal", targetField = "wgwtfbyName", dictType = "wgwtfby")
    private String wgwtfbyName;

    /**
     * 违规问题分布二(字典)-val
     */
    private String wgwtfbeVal;

    /**
     * 违规问题分布二(字典)
     */
    @DictParam(field = "wgwtfbeVal", targetField = "wgwtfbeName", dictType = "wgwtfbe")
    private String wgwtfbeName;

    /**
     * 投诉处理状态(字典)-val
     */
    private String tsclztVal;

    /**
     * 投诉处理状态(字典)
     */
    @DictParam(field = "tsclztVal", targetField = "tsclztName", dictType = "tsclzt")
    private String tsclztName;

    /**
     * 责任人区域
     */
    private String zrrqyVal;

    /**
     * 责任人区域
     */
    @DictParam(field = "zrrqyVal", targetField = "zrrqyName", dictType = "company")
    private String zrrqyName;

    /**
     * 责任人
     */
    private String zrr;

    /**
     * 处理方式(字典)-val
     */
    private String clfsVal;

    /**
     * 处理方式(字典)
     */
    @DictParam(field = "clfsVal", targetField = "clfsName", dictType = "clfs")
    private String clfsName;

    /**
     * 完结状态(字典)-val
     */
    private String wjztVal;

    /**
     * 完结状态(字典)
     */
    @DictParam(field = "wjztVal", targetField = "wjztName", dictType = "wjzt")
    private String wjztName;

    /**
     * 接起时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date jqsj;

    /**
     * 判定时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date pdsj;

    /**
     * 完结时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date wjsj;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;

    /**
     * 修改时间
     */
    @TableField(fill = FieldFill.UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;

    /**
     * 指定处理人员二
     */
    private String zdclrye;

    /**
     * 分页查询,不是实际表中字段
     */
    @TableField(exist = false)
    private String keyword;

    /**
     * 投诉建议
     */
    @TableField(exist = false)
    private CustomerComplaintRegistrationEntity customerComplaintRegistrationEntity;

    @TableField(exist = false)
    private List<Map> customizeQueryCondition;


}
